Stored program controlled switching systems have traditionally included a central computer that controlled switching functions in response to a program stored in memory. Although recent switching systems have distributed the call processing function among a number of system control units, many of the time-consuming tasks involved in call setup are still typically performed by a central control. For example, in one known digital switching system, the switching function is distributed among a plurality of switching modules. Each switching module has a plurality of ports and provides connections among the lines and trunks connected to the ports of that module. Calls involving lines or trunks connected to different modules are completed through a time-multiplexed switch that interconnects the modules. Each switching module includes a control unit that controls the switching function of that module. The system also includes a central control that controls the switching function of the time-multiplexed switch. Call handling in such systems requires the execution of a number of functions in addition to establishing connections. Although many of the real-time intensive tasks associated with calls, e.g., signal processing, are performed by the switching module control units, others, notably the determination of the identity of the terminating port of the switching system for each call, are performed by the system central control. The terminating port determination function includes such steps as call screening, determining whether a line or a trunk is required, translating dialed numbers into physical system addresses and hunting for idle members of trunk groups or multi-line hunt groups. These are time-consuming tasks which involve extensive database searching and data manipulation.
One of the important advantages of a modular system of this type is that its capacity can be closely matched to the requirements of specific applications. However, as the system becomes larger and the number of switching modules increases, the performance by the system central control of the per-call tasks associated with the terminating port determination function, imposes an upper limit on the overall system call processing capacity.
In the known system, the features and advantages associated with stored program controlled switching are provided to small communities by locating remote switching modules up to 100 miles from a host system and connecting the remote switching modules to the switching modules of the host system via bidirectional transmission facilities. Remote switching service is provided to communities requiring more lines than can be accommodated by a single remote switching module, by providing a number of remote switching modules in a grouping referred to as a cluster. The modules of the cluster are directly interconnected via bidirectional transmission facilities such that intracluster voice and data traffic can be directly conveyed between modules rather than being routed through the host system network. Control information can also be conveyed among the modules via the direct interconnections therebetween to allow the integrated, stand-alone operation of the entire cluster.
In the normal mode of operation of the known system, the terminating port determination function is performed by the system central control for all calls including calls that both originate and terminate on the cluster of remote switching modules. However, the performance of such function by the system central control not only undesirably increases its processing load but, in addition, requires that the remote switching modules process calls in a different manner when in the stand-alone mode of operation.
One particularly significant difficulty that is presented when the terminating port determination function is performed by the cluster of remote switching modules without the aid of the system central control, involves the handling of sequence calls, e.g., forwarded calls or series completion calls. Because the control communication among the remote switching modules in stand-alone operation is relatively slow, it is important to keep the number of inter-module control messages to a minimum in order that the time delay between the completion of dialing by the calling party and the subsequent setup of the call does not become excessive. Because sequence calls can become relatively complex, e.g., calls which are forwarded many times or calls that are forwarded either out of or into the cluster of remote switching modules, the processing and inter-module control communication required for such calls can become excessively involved and time-consuming.
In view of the foregoing, a recognized problem in the art is the difficulty in efficiently setting up sequence calls in a distributed control switching system.